Processors in computers employ variable power-performance states to match operating states to compute load. Modern processors incorporate dynamic voltage and frequency scaling as integral mechanisms to tailor operating states. These operating state changes are typically managed by the operating system or system firmware using explicit, special instructions to cause processor operating state change. Management of these states by the system software layer is typically designed to take a conservative approach, and therefore limits the benefits that can be extracted using the state change mechanisms.
Some modern processors have hardware mechanisms for automatically demoting a software managed idle state transition for greater power reduction. However, even in such a case, the system software/firmware has to first initiate the transition to idle state before hardware can apply the voltage/frequency scaling. System software is typically unaware of the fine-grain variations in workload characteristics that rapidly alter the performance-level required from the hardware. The system software is therefore unable to adapt to the workload in a rapid fashion. In today's systems, power-performance state control is, hence, conservatively employed giving up greater efficiency.